package com.lfy.fyadmin.service;

import com.lfy.fyadmin.entity.Role;
import com.lfy.fyadmin.dto.RoleQueryRequest;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

/**
* @author 53409
* @description 针对表【role(角色表)】的数据库操作Service
* @createDate 2025-07-23 21:51:27
*/
public interface RoleService extends IService<Role> {

    boolean updateSelective(Role role);
    
    /**
     * 分页查询角色（支持条件查询）
     * @param queryRequest 查询条件
     * @return 分页结果
     */
    IPage<Role> pageWithConditions(RoleQueryRequest queryRequest);
    
    /**
     * 删除角色及其关联资源
     * @param roleId 角色ID
     * @return 是否删除成功
     */
    boolean deleteRoleWithRelations(Long roleId);
}
